package com.tanhua.dubbo.api.mongo;

import com.tanhua.model.mongo.RecommendUser;
import com.tanhua.model.mongo.UserLike;
import com.tanhua.model.vo.PageResult;

/**
 * 用户喜欢服务接口
 */
public interface UserLikeApi {
    /**
     * 喜欢 或 不喜欢 记录
     * @param userLike
     * @return
     */
    boolean save(UserLike userLike);

    //喜欢：调用服务查询我的喜欢数量
    Long countByUserId(Long userId);

    //粉丝:调用服务查询我的喜欢数量
    Long countByLikeUserId(Long userId);

    //根据当前用户id与好友id,删除UserLike中 粉丝-喜欢记录
    void deleteById(Long userId, Long friendId);

    //互相关注分页查询
    PageResult<RecommendUser> findPageLikeEachOther(Long userId, int page, int pagesize);

    //我关注分页查询
    PageResult<RecommendUser> findPageOneSideLike(Long userId, int page, int pagesize);

    //粉丝分页查询
    PageResult<RecommendUser> findPageFens(Long userId, int page, int pagesize);

    //谁看过我分页查询
    PageResult<RecommendUser> findPageMyVisitors(Long userId, int page, int pagesize);
}
